Information processing apparatus, information processing method, and recording medium

ABSTRACT

A controller of an IRD generates a provisional ID for uniquely identifying an Event within the unit. Then, an Event within the unit is read from a Resource Schedule Board (RSB), and a record ID (Event ID) of the Event is extracted. A provisional ID, which is different from the registered record IDs within the related unit, is searched for. The searched provisional ID is set to be the record ID and is combined with a global unique ID (GUID) of the unit, thereby generating an Object ID. As a result, the Object ID for uniquely identifying the Event within a bus is speedily determined.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to information processingapparatuses, information processing methods, and recording media. Moreparticularly, the invention relates to an information processingapparatus which is connected to other information processing apparatusesvia an IEEE-1394 serial data bus and which reliably and individuallycontrols built-in sub-units. The invention also pertains to aninformation processing method used in the above type of informationprocessing apparatus and to a recording medium implementing this method.

2. Description of the Related Art

Audio/visual (AV) machines that can transmit information to each othervia a network using an IEEE-1394 serial data bus are being developed. Inthis network, it is possible to control the AV machines connected to thenetwork by using a predetermined command (AV/C Command Transaction Set).For example, a video picture received by an Integrated Receiver Decoder(IRD) 71 for receiving digital satellite broadcasts can be recorded, asshown in FIG. 1, on a Digital Video Cassette Recorder (DVCR) 81connected to the IRD 71 via an IEEE-1394 serial data bus 2 (hereinaftersimply referred to as the “bus 2”). Additionally, what is called“recording reservations” can be made by using the IRD 71 and the DVCR81.

According to the recording reservation processing, a controller 72 ofthe IRD 71 controls the IRD 71 and the DVRC 81. More specifically, therecording-reservation settings (channel, recording start time, etc.) aremade on the IRD 71, and when the recording start time is reached, thecontroller 72 of the IRD 71 controls a tuner sub-unit 73 to select thereserved (set) channel and to output a received video signal to the DVCR81 via the bus 2. Simultaneously, the controller 72 transmits arecording start command to a VCR sub-unit 84 of the DVCR 81 via the bus2. In response to the recording start command transmitted from thecontroller 72, the VCR sub-unit 84 of the DVCR 81 records the videosignal supplied from the tuner sub-unit 73 on magnetic tape (not shown).

As discussed above, it is possible to control the operation of the DVCR81 from another machine (in the example shown in FIG. 1, the IRD 71)connected to the DVCR 81 via the bus 2. In this case, there may be adanger that what is called “double-booking” occurs.

For example, when a recording reservation (recording reservation A) of adigital satellite broadcast is input into the IRD 71, the reservationinformation is stored in the controller 72 of the IRD 71. Thereafter, ifa recording reservation (recording reservation B) of a terrestrialanalog broadcast, which is to be broadcast at the same time as therecording reservation A, is input into the DVCR 81, a controller 82 ofthe DVCR 81 receives and stores the recording reservation B since theinformation concerning the recording reservation A input into the IRD 71has not been reported to the DVCR 81. Thus, upon reaching the time whenboth the recording reservation A and the recording reservation B arestarted, video pictures are inconveniently supplied from both the tunersub-unit 73 of the IRD 71 and an analog tuner block 83 of the DVCR 81 tothe VCR sub-unit 84 of the DVCR 81.

The above inconvenience originates from the fact that reservationinformation managed by an AV machine is not available for another AVmachine connected via the bus 2.

In order to overcome the above-described drawback, a CS mode isconventionally provided for the DVCR 81. According to the CS mode, theDVCR 81 is controlled only by the controller 72 of the IRD 71 and entersthe recording standby position. After the recording reservation A isinput into the IRD 71, the DVCR 81 is set in the CS mode, therebypreventing the occurrence of double-booking.

However, since the DVCR 81 set in the CS mode goes into the reservationstandby position, it cannot execute processing, such as reproduction ofvideo signals, thereby decreasing the ease of operation.

Additionally, there is no method for uniquely specifying events, such asrecording reservations, transmitted to the bus 2. It is thus necessaryto generate a command for each AV machine related to the event, therebydecreasing the ease of operation.

Information (recording start time, etc.) managed by an AV machine is notreported to the other AV machines. Because of this, when the AV machinessimultaneously output information to the bus 2, the amount ofinformation may exceed the bandwidth of the bus 2, causing transmissionerrors to occur.

SUMMARY OF THE INVENTION

Accordingly, in view of the above background, it is an object of thepresent invention to improve the ease of reserve-recording operation andto inhibit the occurrence of double-booking by mutually searchinginformation managed by the individual AV machines connected to a bus.

In order to achieve the above object, according to one aspect of thepresent invention, there is provided an information processing apparatusconnected to an external information processing apparatus via a network.The information processing apparatus includes a management unit formanaging management information. A generation unit generates, based onfirst identification information for identifying the management unit andsecond identification information for identifying the managementinformation within an area managed by the management unit, thirdidentification information for identifying the management informationwithin the network.

The aforementioned information processing apparatus may further includea storage unit for storing the management information in such a mannerthat the management information is readable by the external informationprocessing apparatus via the network.

The network may be formed by using an IEEE-1394 serial data bus.

The first identification information for identifying the management unitmay be a global unique ID.

According to another aspect of the present invention, there is providedan information processing method for use in an information processingapparatus connected to an external information processing apparatus viaa network. The information processing apparatus includes a managementunit for managing management information. The information processingmethod includes the generation step of generating, based on firstidentification information for identifying the management unit andsecond identification information for identifying the managementinformation within an area managed by the management unit, thirdidentification information for identifying the management informationwithin the network.

According to still another aspect of the present invention, there isprovided a recording medium for recording a program executable by acomputer, the program for controlling an information processingapparatus connected to an external information processing apparatus viaa network. The information processing apparatus includes a managementunit for managing management information. The program includes thegeneration step of generating, based on first identification informationfor identifying the management unit and second identificationinformation for identifying the management information within an areamanaged by the management unit, third identification information foridentifying the management information within the network.

According to a further aspect of the present invention, there isprovided an information processing apparatus connected to an externalinformation processing apparatus via a network and including at leastone sub-unit for executing a predetermined function. The informationprocessing apparatus includes a generation unit for generating aprovisional ID for an event which controls the sub-unit. An extractionunit extracts an event ID of an authenticated event. A comparison unitcompares the provisional ID generated by the generation unit with theevent ID extracted by the extraction unit. An authentication meansauthenticates the provisional ID as the event ID according to acomparison result obtained by the comparison unit.

The event ID may uniquely correspond to the event according to anauthentication operation performed by the authentication unit.

The network may be formed by an IEEE-1394 serial data bus.

The aforementioned information processing apparatus may further includea combination unit for combining the event ID with a value unique to theinformation processing. apparatus that has reserved the sub-unit,thereby generating a value unique to the network.

According to a yet further aspect of the present invention, there isprovided an information processing method for use in an informationprocessing apparatus connected to an external information processingapparatus via a network and including at least one sub-unit forexecuting a predetermined function. The information processing methodincludes a generation step of generating a provisional ID for an eventwhich controls the sub-unit, an extraction step of extracting an eventID of an authenticated event, a comparison step of comparing theprovisional ID generated in the generation step with the event IDextracted in the extraction step, and an authentication step ofauthenticating the provisional ID as the event ID according to acomparison result obtained in the comparison step.

According to a further aspect of the present invention, there isprovided a recording medium for recording a program executable by acomputer, the program for controlling an information processingapparatus connected to an external information processing apparatus viaa network and including at least one sub-unit for executing apredetermined function. The program includes a generation step ofgenerating a provisional ID for an event which controls the sub-unit, anextraction step of extracting an event ID of an authenticated event, acomparison step of comparing the provisional ID generated in thegeneration step with the event ID extracted in the extraction step, andan authentication step of authenticating the provisional ID as the eventID according to a comparison result obtained in the comparison step.

According to a further aspect of the present invention, there isprovided an information processing apparatus connected to an externalinformation processing apparatus via a network and including at leastone sub-unit for executing a predetermined function. The informationprocessing apparatus includes a storage unit for storing reservationinformation concerning a reservation of the sub-unit. A supply unitreads out the reservation information stored in the storage unit andsupplies the reservation information to the external informationprocessing apparatus in response to a request from the externalinformation processing apparatus. An addition unit adds identificationinformation to the reservation information of the sub-unit to be storedin the storage unit, the identification information including a valueunique to the information processing apparatus that has reserved thesub-unit and a value unique to the reservation of the sub-unit set bythe information processing apparatus.

The value unique to the information processing apparatus may be a globalunique ID, and the value unique to the reservation may be a record ID.

The aforementioned information processing apparatus may further includean input unit for inputting reservation information concerning thereservation of the sub-unit, a search unit for searching for theidentification information corresponding to the reservation informationstored in the storage unit, and a setting unit for setting a value whichis not stored in the storage unit as a value unique to the reservationinformation newly input by the input unit and set by the informationprocessing apparatus in accordance with a search result obtained by thesearch unit.

The aforementioned information processing apparatus may further includea reading unit for reading reservation information stored in a storageunit of the external information processing apparatus when a sub-unit ofthe external information processing apparatus is reserved, and a writingunit for adding identification information to reservation information ofthe sub-unit of the external information processing apparatus inaccordance with a reading result obtained by the reading unit and forwriting the reservation information into the storage unit of theexternal information processing apparatus, the identificationinformation including a value unique to the information processingapparatus that has reserved the sub-unit of the external informationprocessing apparatus and a value unique to the reservation of thesub-unit of the external information processing apparatus set by theinformation processing apparatus.

According to a further aspect of the present invention, there isprovided an information processing method for use in an informationprocessing apparatus connected to an external information processingapparatus via a network and including at least one sub-unit forexecuting a predetermined function. The information processing methodincludes a storage control step of controlling storage of reservationinformation concerning a reservation of the sub-unit, a supply step ofreading out the reservation information stored by processing of thestorage control step and of supplying the reservation information to theexternal information processing apparatus in response to a request fromthe external information processing apparatus, and an addition step ofadding identification information to the reservation information of thesub-unit to be stored by processing of the storage control step, theidentification information including a value unique to the informationprocessing apparatus that has reserved the sub-unit and a value uniqueto the reservation of the sub-unit set by the information processingapparatus.

According to a further aspect of the present invention, there isprovided a recording medium for recording an information processingprogram executable by a computer, the information processing program foruse in an information processing apparatus connected to an externalinformation processing apparatus via a network and including at leastone sub-unit for executing a predetermined function. The programincludes a storage control step of controlling storage of reservationinformation concerning a reservation of the sub-unit, a supply step ofreading out the reservation information stored by processing of thestorage control step and of supplying the reservation information to theexternal information processing apparatus in response to a request fromthe external information processing apparatus, and an addition step ofadding identification information to the reservation information of thesub-unit to be stored by processing of the storage control step, theidentification information including a value unique to the informationprocessing apparatus that has reserved the sub-unit and a value uniqueto the reservation of the sub-unit set by the information processingapparatus.

According to a further aspect of the present invention, there isprovided an information processing apparatus connected to via a networkan external information processing apparatus including at least onesub-unit for executing a predetermined function. The informationprocessing apparatus includes a reading unit for reading reservationinformation concerning a reservation of the sub-unit stored in a storageunit of the external information processing apparatus when the sub-unitof the external information processing apparatus is reserved. A writingunit adds identification information to the reservation information ofthe sub-unit of the external information processing apparatus inaccordance with a reading result obtained by the reading unit and writesthe reservation information into the external information processingapparatus, the identification information including a value unique tothe information processing apparatus that has reserved the sub-unit ofthe external information processing apparatus and a value unique to thereservation of the sub-unit set by the information processing apparatus.

The value unique to the information processing apparatus may be a globalunique ID, and the value unique to the reservation may be a record ID.

According to a further aspect of the present invention, there isprovided an information processing method for use in an informationprocessing apparatus connected to via a network an external informationprocessing apparatus including at least one sub-unit for executing apredetermined function. The information processing method includes areading step of reading reservation information concerning a reservationof the sub-unit stored in a storage unit of the external informationprocessing apparatus when the sub-unit of the external informationprocessing apparatus is reserved, and a writing step of addingidentification information to the reservation information of thesub-unit of the external information processing apparatus in accordancewith a reading result obtained by processing of the reading step and ofwriting the reservation information into the external informationprocessing apparatus, the identification information. including a valueunique to the information processing apparatus that has reserved thesub-unit of the external information processing apparatus and a valueunique to the reservation of the sub-unit set by the informationprocessing apparatus.

According to a further aspect of the present invention, there isprovided a recording medium for recording an information processingprogram executable by a computer, the information processing program foruse in an information processing apparatus connected to via a network anexternal information processing apparatus including at least onesub-unit for executing a predetermined function. The program includes areading step of reading reservation information concerning a reservationof the sub-unit stored in storage unit of the external informationprocessing apparatus when the sub-unit of the external informationprocessing apparatus is reserved, and a writing step of addingidentification information to the reservation information of thesub-unit of the external information processing apparatus in accordancewith a reading result obtained by processing of the reading step and ofwriting the reservation information into the external informationprocessing apparatus, the identification information including a valueunique to the information processing apparatus that has reserved thesub-unit of the external information processing apparatus and a valueunique to the reservation of the sub-unit set by the informationprocessing apparatus.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an example of the configurationof a related network system;

FIG. 2 is a block diagram illustrating the configuration of a networksystem incorporating an embodiment of the present invention;

FIG. 3 is a block diagram illustrating the configuration of a BulletinBoard Subunit (BBS) 14 shown in FIG. 2;

FIG. 4 is a block diagram illustrating the configuration of a BBS 34shown in FIG. 2;

FIG. 5 illustrates an example of the operation of the network systemshown in FIG. 2;

FIG. 6 illustrates an example of the operation of the network systemshown in FIG. 2;

FIG. 7 is a flow chart illustrating the operation of the network systemshown in FIG. 5;

FIG. 8 is a flow chart illustrating the operation of the network systemshown in FIG. 5;

FIG. 9 is a flow chart illustrating the operation of the network systemshown in FIG. 5;

FIG. 10 illustrates the format of a WRITE OPEN command;

FIG. 11 illustrates the format of a READ command;

FIG. 12 illustrates the format of a CREATE command;

FIG. 13 illustrates the subfunction_1 shown in FIG. 12;

FIG. 14 illustrates the details of the subfunction_1 shown in FIG. 13;

FIG. 15 illustrates the values of the fields shown in FIG. 14;

FIG. 16 illustrates the format of a WRITE DESCRIPTOR command;

FIG. 17 illustrates the format of a CLOSE command;

FIG. 18 illustrates another example of the operation of the networksystem shown in FIG. 2;

FIG. 19 is a block diagram illustrating the configuration of a networksystem incorporating an embodiment of the present invention;

FIG. 20 is a flow chart illustrating the processing for setting theObject ID;

FIG. 21 is a flow chart illustrating the processing for setting the SAEvent ID;

FIG. 22 is a block diagram illustrating the configuration of a networksystem incorporating another embodiment of the present invention;

FIG. 23 is a flow chart illustrating the operation of the network systemshown in FIG. 22;

FIG. 24 illustrates the BBS format;

FIG. 25 illustrates the root_object_list_ID shown in FIG. 24;

FIG. 26 illustrates the RSB format;

FIG. 27 illustrates the format of the Write Enabledlist_specific_information shown in FIG. 26;

FIG. 28 illustrates the format of the board_type shown in FIG. 27;

FIG. 29 illustrates the format of the object_entry shown in FIG. 26;

FIG. 30 illustrates the format of the Resource Schedule Entry shown inFIG. 29;

FIG. 31 illustrates the format of the start_time shown in FIG. 30;

FIG. 32 illustrates the format of the Duration shown in FIG. 30;

FIG. 33 illustrates the format of the repeat_type shown in FIG. 34;

FIG. 34 illustrates the format of the repeat_information shown in FIG.30;

FIG. 35 illustrates the format of the repeat_information shown in FIG.30;

FIG. 36 illustrates the format of Info blocks shown in FIG. 30;

FIG. 37 illustrates the format of thesupported_board_type_specific_information shown in FIG. 24; and

FIG. 38 is a block diagram illustrating an example of the configurationof a computer.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The configuration of a network system incorporating an embodiment of thepresent invention is described below with reference to FIG. 2.Throughout the specification, the term “system” indicates an entireapparatus formed of a plurality of devices, means, and so on.

This network system is formed of an IRD 1 and a DVCR 3 connected to eachother via a bus 2. In addition to the IRD 1 and the DVCR 3, electronicmachines provided with an IEEE-1394 terminal, such as personalcomputers, hard disk drives, compact disc (CD) players, monitors,digital video cameras, and mini disc (MD) (brand name) players, may beconnected to the bus 2.

Electronic machines, such as the IRD 1 and the DVCR 3, connected to thebus 2 are referred to as “units”. Among the units, it is possible toread and write information from and into the individual units by using adescriptor (Descriptor) defined in the AV/C Digital Interface CommandSet General Specification of the AV/C Command Transaction Set(hereinafter referred to as “AV IC General”). The details of AV/CGeneral can be seen in http://cxn02.net.arch.sony.co.jp/Doc/. Thefunctions provided for the units are referred to as the “subunits”.

A controller 11 of the IRD 1 controls the entire IRD 1 by receiving achannel-selecting operation or a recording-reservation operationperformed by a user. The controller 11 also controls the DVCR 3 by usinga predetermined command (AV/C Command Transaction Set). A CS antenna 13receives digital signals of a digital satellite broadcast transmittedvia a communication satellite (not shown) and outputs the digitalsignals to a tuner sub-unit 12. The tuner sub-unit 12 extracts apredetermined channel signal from the digital signals input from the CSantenna 13 under the control of the controller 11, and outputs theextracted signal to a VCR sub-unit 33 of the DVCR 3 via the bus 2. Thecontroller 11 further searches for information stored in a BulletinBoard Subunit (BBS) 34 of the DVCR 3.

A BBS 14, which serves as a sub-unit of the IRD 1, stores informationconcerning recording reservations received and determined by thecontroller 11 (details are discussed below with reference to FIG. 24).

A controller 31 of the DVCR 3 controls the entire DVCR 3 by receiving areproducing-instruction operation or a recording-reservation operationperformed by a user. An analog tuner block 32 extracts a predeterminedchannel signal from the input analog signals under the control of thecontroller 31 and outputs the extracted signal to the VCR sub-unit 33.

The VCR sub-unit 33 records on magnetic tape (not shown) a video signalinput from the analog tuner block 32 or a video signal input from thetuner sub-unit 12 of the IRD 1 via the bus 2.

The BBS 34 manages information of recording reservations concerning theDVCR 3.

The tuner sub-unit 12 and the BBS 14 are sub-units of the IRD 1, and theVCR sub-unit 33 and the BBS 34 are sub-units of the DVCR 3. The analogtuner block 32 is not a sub-unit because it is not controlled by anotherunit via the bus 2 though it executes one of the functions of the DVCR3.

In this network system, when a recording reservation of a digitalsatellite broadcast is performed, a user inputs the settings of therecording reservation (channel, recording start time, etc.) into the IRD1. If the input reservation does not cause double-booking, it isaccepted, and the reservation information is written into the BBS 14 ofthe IRD 1.

The BBS 14 is formed of, as shown in FIG. 3, a Resource Schedule Board(RSB) 51 and a Scheduled Action Board (SAB) 52. The SAB 52 stores allthe information concerning recording reservations input from thecontroller 11 of the IRD 1 and from a controller of another unit (forexample, the controller 31 of the DVCR 3). That is, the SAB 52 storesall the information for controlling a series of operations of causingthe tuner sub-unit 12 of the IRD 1 to receive information at apredetermined time and to record it on the VCR sub-unit 33 of the DVCR3.

In contrast, the RSB 51 stores only information concerning reservationsfor the tuner sub-unit 12 of the IRD 1 among all the informationconcerning recording reservations (including reservations set by otherunits). Even if the operation of the VCR sub-unit 33 is related to thatof the tuner sub-unit 12, the RSB 51 does not store reservationinformation of the VCR sub-unit 33. The RSB 51 makes the storedinformation public in response to a request not only from the controller11 of the same unit, but also from the controller of another unit (forexample, the controller 31 of the DVCR 3).

Similarly, the BBS 34 of the DVCR 3 is formed of, as shown in FIG. 4, aRSB 61 and a SAB 62. The SAB 62 stores all the information concerningrecording reservations input from the controller 31 of the DVCR 3 andfrom another controller of another unit (for example, the controller 11of the IRD 1). In contrast, the RSB 61 stores only informationconcerning reservations for the VCR sub-unit 33 of the DVCR 3 among allthe information concerning recording reservations input into thecontroller 31 of the DVCR 3 and into the controller 11 of the IRD 1.Even if the operation of the tuner sub-unit 12 is related to that of theVCR sub-unit 33, the RSB 61 does not store reservation information ofthe tuner sub-unit 12. The RSB 61 makes the stored information public inresponse to a request not only from the controller 31 of the same unit,but also from the controller of another unit (for example, thecontroller 11 of the IRD 1).

Details of information stored in the RSBs 51 and 61 and made public willbe described in detail later with reference to FIG. 26.

The operation related to both the RSBs 51 and 61 is discussed below withreference to FIG. 5. For example, when a recording reservation (whichcauses the tuner sub-unit 12 to receive the 48 channel from 20:00 to21:00 on October 16 and to record the received video signal on the VCRsub-unit 33 of the DVCR 3) is input into the controller 11 of the IRD 1,as shown in FIG. 5, the controller 11 sets an ID (BB Object ID) (in thisembodiment, ID_X) unique to the reservation, and stores all theinformation concerning the recording reservation in the SAB 52. Thecontroller 11 also stores in the RSB 51 the set ID (ID_X), the time anddate (from 20:00 to 21:00 on October 16), and information (IDinformation) for specifying the related sub-unit (in this embodiment,tuner sub-unit 12) of the IRD 1. The controller 11 further stores in theRSB 61 of the DVCR 3 the set ID (ID_X), the time and date (from 20:00 to21:00 on October 16), and information (ID information) for specifyingthe related sub-unit (in this embodiment, the VCR sub-unit 33) of theDVCR 3.

Thereafter, when a recording reservation (which causes the analog tunerblock 32 to receive the third channel from 20:00 to 21:00 on October 16and to record the received video image on the VCR sub-unit 33) is inputinto the controller 31 of the DVCR 3, as shown in FIG. 6, the controller31 refers to the RSB 61 and determines whether the information of theinput recording reservation overlaps with the information of thereservation which has been accepted and made public to the RSB 61. Inthis case, since the recording time, i.e., from 20:00 to 21:00 onOctober 16, of the input reservation overlaps with that of the acceptedreservation, the input recording reservation is not accepted. If it isdetermined that the information of one reservation does not coincidewith that of the other reservation, the input recording reservation isaccepted. All the information is stored in the SAB 62, and theinformation concerning the VCR sub-unit 33 is stored in the RSB 61.

Details of the above-described reservation processing (contending-unitsearch processing) are discussed below with reference to the flow chartsof FIGS. 7 through 9.

In step S11, a user sets a reservation in the controller 11 of the IRD1. That is, in the example shown in FIG. 5, a reservation for causingthe tuner sub-unit 12 to receive the 48 channel from 20:00 to 21:00 onOctober 16 and to transfer the received video signal to the VCR sub-unit33 of the DVCR 3 and record it. Simultaneously, in step S12, thecontroller 11 controls the RSBs of the units including the targetsub-units to be in the WRITE OPEN state. In the example illustrated inFIG. 5, the target sub-units are the tuner sub-unit 12 of the IRD 1 andthe VCR sub-unit 33 of the DVCR 3. Accordingly, the controller 11 firstselects the tuner sub-unit 12 and outputs a WRITE OPEN command so thatthe RSB 51 of the IRD 1 including the tuner sub-unit 12 reaches theWRITE OPEN state (the write enable state).

In practice, however, the RSB 51 and the controller 11 are in the sameunit, i.e., the RSB 51 and the controller 11 are not connected via thebus 2. Accordingly, the controller 11 controls the RSB 51 as if a WRITEOPEN command were supplied to the RSB 51 via the bus 2.

After the RSB 51 of the IRD 1 including the tuner sub-unit 12 has becomethe WRITE OPEN state, the controller 11 controls the RSB 61 of the DVCR3 including the remaining target sub-unit, i.e., the VCR sub-unit 33, tobe in the WRITE OPEN state. In this case, the controller 11 outputs aWRITE OPEN command having the format shown in FIG. 10 to the RSB 61 (thecontroller 31) of the DVCR 3 via the bus 2.

The above WRITE OPEN command is one type of OPEN DESCRIPTOR commandsused for making access to a predetermined target address space. As shownin FIG. 10, the value 08 ₁₆, which represents the OPEN DESCRIPTOR, isset in the opcode. The value 10 ₁₆, which indicates the Object ListDescriptor defined by the list ID, is set in operand 0 as thedescriptor_type representing the type of the descriptor. In operand 1and operand 2, list IDs (in this embodiment, 00 and 01) of the RSBs tobe accessed (to be in the WRITE OPEN state) are described.

The value 03 ₁₆, which indicates that descriptors are to be opened to beread or written, is set in operand 3 as subfunction. The value 00 is setin operand 4 as a reserved value.

Referring back to FIG. 7, in step S13, the controller 11 reads out thedescriptor_length and the list_specific_information field (FIG. 26) ofthe RSB 51 within the BBS 14. The reading operation is performed byusing, for example, the READ command shown in FIG. 11. In this case,since the controller 11 and the RSB 51 are not connected via the bus 2,as stated above, the above data is directly read from the controller 11to the RSB 51. When, however, the controller 11 reads out data from theRSB 61 of the DVCR 3, the READ command shown in FIG. 11 is output to theRSB 61 (the controller 31) via the bus 2.

As illustrated in FIG. 11, the value 09 ₁₆, representing the readdescriptor, is set in the opcode, which is the head of the READ command.In the subsequent operand 0, the descriptor identifier for identifyingthe descriptor to be read is described. In the reading operation in stepS13, the descriptor identifier is set by the list ID. More specifically,00 ₁₆ through OD₁₆ of the Address_offset of the write enabledlist_specific_information field of the RSB shown in FIG. 27 are set.

When the READ command is transmitted, FF is set in theread_result_status. When the READ command is returned from the target asa response, the read result is set. In the data_length, the number ofbytes of data to be read from the target is described. When thedata_length is set to be 0, all the lists are read. The address at whichthe reading is started is set in the address. When 00 is set in theaddress, the reading commences from the head.

Referring back to FIG. 7, in step S14, the controller 11 extracts forthe RSB 51 the maximum length of the list (the object_list_maximum_sizeshown in FIG. 27), the maximum number of entries of the list (theobject_entries_maximum_number shown in FIG. 27), and the maximum bytelength of each entry (the object_entry_maximum_size shown in FIG. 27).

The controller 11 then determines in step S15 whether data (reservationinformation) to be recorded on the RSB 51 causes an excess of themaximum length of the list extracted in step S14. If the outcome of stepS15 is no, the process proceeds to step S16 in which the controller 11determines whether the value obtained by subtracting the current numberof entries from the maximum number of entries of the list extracted instep S14 is greater than zero, i.e., whether there is any entry left forwriting data. If the result of step S16 is yes, the process proceeds tostep S17 in which the controller 11 determines whether the valueobtained by subtracting the length of the entry of the reservationinformation to be written from the maximum length of the entry extractedin step S14 is greater than zero, i.e., whether there is any space leftfor the entry into which data is written.

If any one of the conditions set in steps S15 through S17 is notsatisfied, the process proceeds to step S18 in which the controller 11indicates a warning, such as “reservations are full” to the user. Thisenables the user to recognize that no more reservations can be made.

If all the conditions set in steps S15 through S17 are met, thereservation information can be written into the RSB 51, and adetermination is further made in steps S19 through S25 of FIG. 8 whetherthe time of the reservation input by the user overlaps with that of thereservation which has already been accepted, i.e., whetherdouble-booking has occurred.

More specifically, in step S19, a variable i is initialized to zero. Itis then determined in step S20 whether the value obtained by subtractingthe variable i from the number of entries, i.e., the number_of_entries,recorded on the RSB 51 is greater than zero, i.e., whether all theentries recorded on the RSB 51 have been searched. If the outcome ofstep S20 is yes, the process proceeds to step S21 in which thecontroller 11 reads out the object_entry[i] (FIG. 29) (in this case, theobject_entry [0]) shown on the RSB 51.

Although the reading operation in step S21 is also performed by usingthe READ command illustrated in FIG. 11, the descriptor identifier isset by the object position. In the object_entry[i], the time informationof the registered reservation (the start_time and the Duration shown inFIG. 30) and the ID information of the target sub-unit (thesubunit_type_and_ID[0] shown in FIG. 36) are stored, which will bedescribed later.

Then, the controller 11 determines in step S22 whether the timeinformation (the start_time and the Duration) input by the user in stepS11 overlaps with the time information (the start_time and the Duration)read in step S21. If the result of step S22 is yes, the process proceedsto step S23. In step S23, the controller 11 determines whether thesub-unit in which the reservation was set in step S11 (in this case, thetuner sub-unit 12) coincides with the sub-unit read in step S21 (thesubunit type_and_ID). If the outcome of step S23 is yes, the time andthe sub-unit read in step S21 match those input by the user.Accordingly, the process proceeds to step S25 in which the controller 11indicates a warning, such as “reservations are overlapping”. As aresult, the occurrence of double-booking can be prevented.

If it is found in step S22 that the time information input by the userdoes not overlap with the time information read in step S21, or if it isfound in step S23 that the sub-units determined in steps S11 and S21 donot coincide with each other even if time overlapping has occurred instep S22, there is no possibility of generating double-booking.Accordingly, in step S24, the variable i is incremented by one, and theprocess returns to step S20. Processing similar to the above-describedprocessing is repeated until it is determined in step S20 that the valueobtained by subtracting the variable i from the number_of_entries is notgreater than zero. That is, all the object_entries[i] stored in the RSB51 are searched to determine whether there are any overlappingreservations.

If it is found in step S20 that the value obtained by subtracting thevariable i from the number_of_entries is not greater than zero, i.e.,that all the object_entries[i] have been searched, the process proceedsto step S26. In step S26, the controller 11 outputs a CREATE command tothe RSB 51 and creates an object entry in the RSB 51. In this case, theCREATE command is not actually output, and processing is executed as ifthe CREATE command were output, as stated above. When the object entryis created in the RSB 61, the CREATE command is output.

The above-described steps S15 through S18 may be executed after it isdetermined in step S20 that the all the entries have not been completelysearched.

The above-described CREATE command is described in detail below withreference to FIGS. 12 through 15. FIG. 12 illustrates the format of theAV/C CREATE command. FIG. 13 illustrates the value that can be specifiedby the subfunction_1 shown in FIG. 12, and in this embodiment, 01(create a new object and its child list) is used. FIG. 14 illustratesthe format of the subfunction_1_specification for subfunction_1=01 shownin FIG. 12. FIG. 15 illustrates the values of the individual fieldsshown in FIG. 14. If the values 20, 22, and 11 are respectively set, asillustrated in FIG. 15, in the fields, i.e., thedescriptor_identifier_where, the descriptor_identifier_what_1, and thedescriptor_identifier_what_2, of FIG. 14, the meaning is to create a newobject and its child list.

Details of the AV/C CREATE command are indicated in IEEE 1394 (see theInternet homepage http://www.1394 TA.org), and the formats used in thisembodiment are extracted from the specifications of the IEEE 1394standards (Enhancement to the AV/C General Specification 3.0 Version 1.0FC2 and TA Document 1999005 AV/C Bulletin Board Subunit GeneralSpecification 1.0 Draft 0.99:149). The information descriptors formingthe board (Information List Descriptor) include writable descriptors andreadable descriptors, and the list type is used for differentiating thetwo types.

To write new information into the AV/C descriptor (AV/C Descriptor) froman external source, the following method may be employed as a typicalexample. The controller issues the above-described CREATE command to thetarget, and after the target forms a model for writing information, thecontroller again controls the writing of specific information. Morespecifically, when information is first written, the controllerdesignates a desired list and issues the AV/C Descriptor CREATE command.Upon receiving this command, the target forms the object based on themodel having the data structure specified by the AV/C General. The modelhaving the data structure designated by the AV/C General has a field ofthe object ID. In the list using the AV/C Descriptor, the object ID ismanaged by the target, namely, when the object is created, the targetadds an ID unique to the object and possesses the function of managingthe ID.

The object ID is an ID number for uniquely specifying the object in thelist, and the target is required to have the function of preventing themultiple storing of IDs. The BBS merely provides information, and theobject IDs are managed by the controller.

When the CREATE command is issued to a sub-unit, inconsistencies mayarise. When an object is created, the object ID, which should be managedby the controller, is under the control of the target. After issuing theCREATE command, the controller has to continue the writing control. Inthis manner, the processing is divided into a plurality of steps.Accordingly, if the controller is accidentally disconnected from the buswhile writing information into the BBS, an imperfect object may becreated.

To overcome the above-described situation, there is needed a system forspecifying the imperfect object and correctly eliminating it. In thisembodiment, the writing of information into the BBS is restricted so asto specify imperfect objects.

In creating an object, the target (in this embodiment, the DVCR 3) firstassigns temporarily managing numbers (for example, all 0) to a GlobalUnique ID (GUID) of the object ID. The object ID consists of the GUIDand the record ID. The controller then writes information into theobject, and if the writing operation is correctly completed, thecontroller finally overwrites the GUID.

According to the above procedure, if the writing operation has beencorrectly completed, the presence of objects having the GUID indicatingall 0 is impossible. Accordingly, such objects can be specified asimperfect objects which were accidentally created while the writingoperation was being performed.

Consequently, the objects which are being written can be uniquelyidentified. It is also possible to distinguish correctly written objectsfrom imperfect objects and to easily eliminate the imperfect objects(invalid objects). This further makes it possible to effectively utilizea finite memory provided for an electronic apparatus. According to theabove method, the objects which are being written can be simplyspecified by temporarily assigning 0 to the GUID. Software foreliminating imperfect objects can easily be created accordingly.

In step S26 of FIG. 9, the INSERT command may be used instead of theCREATE command.

Referring back to FIG. 9, the process proceeds to step S27 in which thecontroller 11 writes the reservation content into theentry_speific_information fields (FIGS. 30 through 36) of the RSB 51.That is, the start_time, the Duration, and the repeat_information, andthe target sub-unit (subunit_type_and_ID) are written.

FIG. 16 illustrates the WRITE DESCRIPTOR command output from thecontroller 11 when step S27 is executed. As stated above, since thecontroller 11 and the RSB 51 are not connected via the bus 2, thecontroller 11 directly writes information into the RSB 51 withoutissuing the WRITE DESCRIPTOR command. Conversely, when the controller 11writes information into the RSB 61, the WRITE DESCRIPTOR command isissued.

In the opcode, which is the head of the WRITE DESCRIPTOR command, thevalue OA₁₆, which indicates the WRITE DESCRIPTOR, is set. In operand 0,the descriptor identifier for identifying the descriptor of theinformation to be written is set by the object position.

Thereafter, the value 50 ₁₆, which represents the partial_replace, isset as the subfunction, thereby executing partial insert or partialdelete. In performing insert, a new descriptor is inserted immediatelybefore the descriptor defined by the operand specified by thedescriptor_identifier. In performing delete, the descriptor defined bythe descriptor_identifier is deleted.

The group_tag is used for updating the data which cannot be divided whenbeing written into the descriptor. In this embodiment, the value 00 ₁₆(immediate), which indicates that the data is immediately written intothe descriptor, is set. The replacement_data_length represents thenumber of bytes of the operand, i.e., the length of data to be written.The address indicates the position at which processing is executed. Ifthe replacement_data_length indicates 0, partial delete is performed, inwhich case, the operand of the replacement_data does not exist. In thiscase, the original_data_length is greater than 0, and indicates thenumber of bytes to be deleted. If the original_data_length is 0, partialinsert is executed, in which case, the replacement_data_length isgreater than 0, and indicates the number of bytes to be inserted.

Referring back to FIG. 9, the process proceeds to step S28 in which thecontroller 11 closes the list, i.e., the RSB 51. Simultaneously, thecontroller 11 outputs the CLOSE command shown in FIG. 17 to the RSB 51.As stated above, the controller 11 directly closes the RSB 51 withoutissuing the CLOSE command since the controller 11 and the RSB 51 are notconnected via the bus 2. When the controller 11 closes the RSB 61 of theDVCR 3, the CLOSE command is output.

The format of the CLOSE command illustrated in FIG. 17 is basicallysimilar to the WRITE OPEN command shown in FIG. 10, except for thefollowing point. The subfunction of the WRITE OPEN command indicates 03₁₆, which represents WRITE OPEN, while the subfunction of the CLOSEcommand indicates 00 ₁₆, which indicates CLOSE.

The process then proceeds to step S29 in which the controller 11determines whether there are any other resources related to thereservation. In this case, although processing for making a reservationin the tuner sub-unit 12 has been completed, another processing formaking a reservation in the VCR sub-unit 33 of the DVCR 3 is required.Accordingly, the process returns to step S12 in which processing similarto that performed on the RSB 51 is executed on the RSB 61 of the DVCR 3.

If it is determined in step S29 that there are no other resourcesrelated to the reservation, the processing is completed.

As discussed above, a series of record-reservation operations forcausing the tuner sub-unit 12 to receive a video signal and to record iton the VCR sub-unit 33 has been made. It is now assumed thatreservations are separately made, as shown in FIG. 18, i.e., a receivingreservation is made in the IRD 1 and a recording reservation is made inthe DVCR 3. More specifically, a reservation is input into thecontroller 11 of the IRD 1 to cause the tuner sub-unit 12 to receive apredetermined channel (the 48 channel) during a predetermined periodfrom 20:00 to 21:00 at October 16, and another reservation is input intothe controller 31 to cause the VCR sub-unit 33 to start recording duringa predetermined period from 20:00 to 21:00 at October 16. It appears tothe user that the two reservations are the same reservation. However, itseems to the IRD 1 and the DVCR 3 that the two reservations have beenseparately made, and different IDs (BB Object ID_Y, and BB Object ID_Z)are respectively set in the IRD 1 and the DVCR 3 and are stored in thecorresponding RSB 51 and the RSB 61.

Even when reservations are separately made in the individual units,reservation processing can be executed in a manner similar to thatindicated by the flow charts of FIGS. 7 through 9. However, ifreservations are separately made even when the sub-units of thedifferent units are used in cooperation with each other, the occurrenceof double-booking has to be checked by the user.

The present invention is applicable even when the BBS 14 is not providedfor the IRD 1, as shown in FIG. 19. In this case, when a reservation isinput from the controller 11 to use the VCR sub-unit 33 of the DVCR 3from 20:00 to 21:00 at October 16, it is written into the RSB 61 of theBBS 34 of the DVCR 3 via the bus 2.

Processing for setting the Object ID is described below with referenceto the flow chart of FIG. 20. After a recording reservation using theDVCR 3 is made on the IRD 1 by the user and is detected by thecontroller 11, the aforementioned reservation processing(contending-unit search processing) shown in FIGS. 7 through 9 isexecuted. When the recording reservation is accepted, the aboveprocessing for setting the Object ID commences. In this embodiment, theObject ID is employed for identifying the reservation (Event) to bestarted at a predetermined time for a predetermined period. The ObjectID has 72 bits in which the most significant 64 bits are used for the IDunique to the unit possessing all the information concerning thereservation, i.e., for the GUID of the unit, for example, IEEE EUI-64,and the least significant 8 bits are used for the unique value set inthe unit, i.e., for the record ID. In this manner, the Object ID foridentifying the Event is formed of the GUID and the record ID. Thus, theprocessing for setting the Object ID can be easily executed, andinformation for specifying the honor which has written the informationcan be effectively included.

It is necessary to identify the Object ID among the individual unitsconnected via the bus 2. The reason for this is as follows. The contentof the RSB of one unit can be read by the other units, and processingmay be simultaneously executed by the sub-units of the different unitsin cooperation with (relating to) each other. Accordingly, it isnecessary for the individual units to check for any processing to beperformed in cooperation with each other.

The processing for setting the above-mentioned Object ID is describedbelow with reference to the flow chart of FIG. 20. In step S41, thecontroller 11 issues a provisional ID for uniquely identifying thereservation information within the IRD 1 as a record ID of the Object ID(which consists of GUID and the record ID).

In step S42, the controller 11 extracts one of the Events registered inthe RSB 51, and further extracts the record ID of the Object IDcorresponding to the extracted Event. The controller 11 then determinesin step S43 whether the provisional ID issued in step S41 coincides withthe record ID extracted in step S42. If the outcome of step S43 is yes,the process returns to step S41 in which the provisional ID is changed.The processing of steps S41 through S43 is repeated until theprovisional ID does not match the record ID.

If it is found in step S43 that the provisional ID does not coincidewith the record ID, the controller 11 determines in step S44 whether allthe Events concerning the related sub-unit which have been made publicin the RSB 51 have been extracted. If the result of step S44 is no, theprocess returns to step S42, and the processing of steps S42 through S44is repeated until it is determined in step S44 that all the Events havebeen extracted. If the outcome of step S44 is yes, the process proceedsto step S45. In step S45, the controller 11 adds the provisional ID(record ID) generated in step S41 to the unit ID (GUID) of the IRD 1,thereby generating the Object ID. The Object ID is then set in the RSB51.

As discussed above, the Object ID can be set merely by checking the RSBcorresponding to the related sub-unit (without needing to check the RSBsof the units including unrelated sub-units). The reason for this is asfollows, as stated above. Since the Object IDs of the RSBs of the otherunits include the GUIDs unique to the individual units, it is notpossible that the Object IDs set by the other units match the Object IDset by the corresponding unit. As a result, the Object ID can be easilyset.

Instead of the Object ID, a predetermined unique ID (hereinafterreferred to as the “SA Event ID”) within the bus 2 may be used. After arecording reservation using the DVCR 3 input into the IRD 1 from theuser and detected by the controller 11, reservation (contending-unitsearching) processing shown in FIGS. 7 through 9 is executed.Thereafter, the processing shown in FIG. 21 commences.

In step S51, the controller 11 generates a provisional ID for uniquelyidentifying the reservation information in the bus 2. Then, in step S52,the controller 11 reads out an Event stored in the RSB 51 of one unit(or the unit related to the reservation processing) within the bus 2 andextracts the SA Event ID of the read Event. Subsequently, the controller11 determines in step S53 whether the provisional ID generated in stepS51 matches the SA Event ID extracted in step S52. The processing fromstep S51 to step S53 is repeated until it is found in step S53 that thetwo IDs do not coincide with each other.

If the outcome of step S53 is no, the controller 11 determines in stepS54 whether all the SA Events of the unit (or the related unit) withinthe bus 2 have been extracted. The processing from step S52 through stepS54 is repeated until the result of step S54 is no. If it is found instep S54 that all the SA Events have been extracted, the processproceeds to step S55 in which the controller 11 records the provisionalID generated in step S51 on the RSB 51 as the SA Event ID.

According to the processing illustrated in FIG. 21, all the RSBs of allthe units connected to the bus 2 have to be checked. In contrast,according to the processing shown in FIG. 20, it is necessary to checkonly the RSBs of the corresponding unit and the related units, therebyachieving fast processing.

The object ID may be stored not only in the RSB, but also in the SAB.This makes it possible to easily detect the occurrence ofdouble-booking. It is now assumed that an IRD 91, as well as the IRD 1and the DVCR 3, is connected to the bus 2, as illustrated in FIG. 22.The BBS 14 of the IRD 1 is provided with not only the RSB 51 and the SAB52, but also a Subunit Identifier Descriptor (SID) 100. The SID 100stores information for identifying which board types (in this case, theRSB 51 and the SAB 52) are supported within the BBS 14 to which the SID100 belongs.

The BBS 34 of the DVCR 3 is provided with not only the RSB 61, but alsoa SID 81. The IRD 91 also possesses a controller 92 and a display unit93.

The operation performed by the system shown in FIG. 22 is discussed indetail below. The user inputs reservation information into thecontroller 11 of the IRD 1. In the example shown in FIG. 22, areservation is input to select the X channel from 20:00 to 21:00 onAugust 12 and record the data of the selected program on the DVCR 3. Thecontroller 11 writes the content of the reservation into a built-inmemory and writes the reservation information into the RSB 51 and theSAB 52 of the BBS 14. The controller 11 also writes the schedule forusing the DVCR 3 as a target into the RSB 61 of the BBS 34 of the DVCR3. Simultaneously, the controller 11 sets the Object ID to be stored inthe individual entries of the RSB 51, the SAB 52, and the RSB 61 to bethe same value.

According to the aforementioned system shown in FIG. 22, a descriptionis given below of the processing executed when the IRD 91 makes areservation for using the DVCR 3 at the time period overlapping the timeof the reservation made by the IRD 1.

In step S61, the controller 92 of the IRD 91 checks the RSB 61 of thetarget DVCR 3 and determines whether there is any reservation made byanother controller in the time period which overlaps with the time ofthe reservation made by the IRD 1. If the outcome of step S61 is no, theprocess proceeds to step S65 in which the controller 92 executesreservation processing similar to that described above. That is, thecontroller 92 writes the time information of the reservation into theRSB 61 of the DVCR 3.

If it is found in step S61 that the VCR sub-unit 33 of the DVCR 3 hasbeen reserved by another controller at the overlapping time, the processproceeds to step S62. In step S62, the controller 92 reads the Object IDof the entry related to the reservation, and determines the node ID ofthe unit that has written the entry from the upper 8-byte (64 bits) GUIDof the Object ID. As stated above, the GUID is inherent in each unit andis not varied every time the bus is reset. Accordingly, the controller92 checks the GUIDs and the node IDs of the units connected to the bus2, and then creates a look-up table about the two IDs in correspondencewith each other in advance. It is thus possible to determine the node IDfrom the GUID by referring to the look-up table.

Subsequently, in step S63, the controller 92 designates the same ObjectID as the entry of the overlapping reservation from the SAB of the unitdetermined in step S62 (in this case, the SAB 52 of the IRD 1), andreads the content of the entry. In step S64, the controller 92 outputsthe content of the overlapping reservation to the display unit 93 anddisplays it. This enables the user of the IRD 91 to identify thepreviously reserved content.

The BBS is discussed in greater detail below. FIG. 24 illustrates theformat of the Subunit identifier Descriptor forming the BBS. Thedescriptor_length represents the length of the Descriptor. Thegeneration_ID indicates which AV/C descriptor format of the BBS is used,and generally, 00 ₁₆ is set.

The size_of_list_ID designates the number of bytes of the ID. Thesize_of_object_ID indicates the number of bytes of the Object ID. Thesize_of_object_position represents the number of bytes of the positionof the object in the list. The number_of_root_object_lists indicates thenumber of root object lists to which the BBS is directly related.

The root_object_list_id_x (x=0, 1, 2, . . . n−1) represents the ID ofeach of the root object lists to which the BBS is related. Thesubunit_dependent_information_length designates the length of thesubunit_dependent_information, and the information of the format and thecontents on which the BBS is dependent is set in thesubunit_dependent_information.

The subunit_dependent_information includes thenon_info_block_fields_length, the bulletin_board_subunit_version, thenumber_of_supported_board_type(n), thesupported_board_type_specific_of_length[0], thesupported_board_type_specific_info[0] throughsupported_board_type_specific_info[n−1], and thesupported_board_type_specific_of_length[0] throughsupported_board_type_specific_of_length[n−1], which represents thelengths of the supported_board_type_specific_info[0] throughsupported_board_type_specific_info[n−1].

The BBS further includes the manufacturer_dependent_length, whichindicates the length of the manufacturer_dependent_information, and themanufacturer_dependent_information, which represents the informationdependent on the manufacturer.

If the value of the root_object_list_id indicates the RSB, apredetermined value 1001 ₁₆ is set, as shown in FIG. 25. In this manner,by fixing the ID representing the RSB (described as Resource ScheduleList in FIG. 25) to the predetermined value, the processing for readingthe RSB can be facilitated.

FIG. 26 illustrates the format of the RSB. The descriptor_lengthindicates the length of the RSB. The list_type indicates whether the RSBis Read Only or Write Enabled. The Read Only list represents that onlyreading is enabled, and the Write Enabled List indicates that writing,as well as reading, is enabled.

The size_of_list_specific_information indicates the length of thelist_specific_information, and the content of thelist_specific_information varies according to the list_type. Theinformation shown in FIG. 27 is set in the Write Enabledlist_specific_information.

The non_info_block_fields_length represents the number of bytes of thenon info block fields. If the board_type is the Resource Schedule Board,as shown in FIG. 28, 01 ₁₆ is set.

The object_list_maximum_size represents the maximum size of the objectlist. The object_entry_maximum_number indicates the maximum number ofobject entries in the list. The object_entry_maximum_size indicates themaximum size of each object entry. If there is no limit imposed on theobject_list_maximum size, the object_entry_maximum_number, and theobject_entry_maximum_size, 0000 ₁₆ is set in each field.

The above three fields are significant for the controller to recognizethe capacity of the object list or the object entry.

The board type dependent_information_length designates the length of theboard_type_dependent_information, and the information unique to theboard type is set in the board_type_dependent_information.

The object_entry is configured specifically as illustrated in FIG. 29.The descriptor_length indicates the length of the descriptor. If theentry_type is Board entry Descriptor, the value 80 ₁₅, which representsthe Board, is set.

The object_ID is formed of the posting_device_GUID and the record_ID.The posting_device indicates the controller that has written (posted)information into the BBS, and accordingly, the posting_device_GUIDrepresents the GUID of the controller. The record_ID designates an IDassigned to the Event within the unit. Thesize_of_entry_specific_information depicts the size of theentry_specific_information.

FIG. 30 illustrates the format of the entry_specific_information. Thenon_info_block_length indicates the number of bytes of the non-infoblock fields before the repeat_information. The start_time representsthe second, the minute, the hour, the day, the month, and the year atwhich the event is started, as illustrated in FIG. 31. The year has 16bits, the four numbers being each represented by a four-bit binary-codeddecimal (BCD). The month has eight bits, the two numbers being eachrepresented by a four-bit BCD. The day has eight bits, the two numbersbeing each indicated by a four-bit BCD. The hour has eight bits, the twonumbers being each indicated by a four-bit BCD. The minute has eightbits, the two numbers being each indicated by a four-bit BCD. The secondhas eight bits, the two numbers being each represented by a four-bitBCD.

The start_time is easily identified by being indicated as the BCD. Thetime is represented by local time.

The Duration, which indicates the length of the event, is represented bythe hour, the minute, and the second, as illustrated in FIG. 32. Thehour has a total of 12 bits, the three numbers being each represented bya four-bit BCD. The minute has a total of eight bits, the two numbersbeing each indicated by a four-bit BCD. The second has a total of eightbits, the two numbers being each represented by a four-bit BCD.

By adding the Duration to the start_time, the end time of the event canbe indicated. The length of the event is thus represented by theDuration without directly indicating the end time. This eliminates theneed to modify the end time even when the start_time of the event ischanged, thereby simplifying the updating processing.

The repeat_information_length indicates the length of therepeat_information. The repeat_information represents when and how theschedule is repeated. If the Scheduled Action is not repeated, therepeat_information_length indicates 00 ₁₆.

The content of the repeat_information varies according to the selectedrepeat type. The repeat type includes the Weekly schedule 00 ₁₆ and theInterval schedule 10 ₁₆, as shown in FIG. 33.

If the schedule is repeated every week, the Posting Device indicates thedays of the week and the number of events to be repeated, as illustratedin FIG. 34.

The value 00 ₁₆ shown in FIG. 33 is set in the repeat_type. The numberof events is set in the number_of_events. The Weekly flags from Sundayto Saturday indicate the days of the week on which the event to berepeated is started. For example, if an event starting from 13:00 forthree hours takes place every Monday and Wednesday, 1 is set in theWeekly flags of Monday and Wednesday, and 0 is set in the other Weeklyflags.

The events to be repeated weekly can be recorded, as described above.Accordingly, only a smaller storage capacity is required compared tothat required for storing, for example, the absolute time and date everyMonday and Wednesday corresponding to the broadcast days.

When the Scheduled Action is repeated with predetermined intervals, thePosting Device describes the event by using the format shown in FIG. 35.

In this example, the value 10 ₁₆ shown in FIG. 33 is set in therepeat_type. The number of events is set in the number_of_events.

The interval represents the interval from the start_time of a currentevent to the start_time of the subsequent event. This interval isrepresented by the hour, the minute, and the second. The hour has atotal of 12 bits, the three numbers being each indicated by a four-bitBCD. The minute has a total of eight bits, the two numbers being eachdesignated by a four-bit BCD. The second has a total of eight bits, thefour numbers being each indicated by a four-bit BCD.

In this manner, the periodically repeated events can be stored. As aconsequence, only a smaller capacity is needed compared to that requiredfor storing the absolute time (time and date) at which each event isstarted.

The info blocks shown in FIG. 30 are represented by the formatillustrated in FIG. 36. The compound_length indicates the byte length ofthe info block, except for the length field. The info_block_type is setto be 8900 ₁₆. The primary_fields_length indicates thenumber_of_subunits and the number of bytes of the subunit_type_and_IDfield.

The number_of_subunits represents the number of subunits used by theposting Device. The subunit_type_and_ID specifies the subunits to beused by the posting Device.

As discussed above, the start_time and the Duration are represented bythe fixed lengths at the fixed address. In contrast, the ID informationfor identifying the subunit and the Posting Device using the subunit isstored as Info blocks at a predetermined address subsequent to theaddress of the start_time and the Duration. With this arrangement, theaddition of Posting Devices can be easily handled.

The supported_board_type_specific_information field shown in FIG. 24 isindicated by the format illustrated in FIG. 37. The value 01 ₁₆, whichindicates the RSB, shown in FIG. 28, is set in the supported_board_type.The supported_board_type_version represents the version number of thebulletin Board Type Specification. The implementation_profile_IDdesignates the profile ID version for this board type.

The supported_board_type_dependent_information_length indicates thenumber of bytes of the supported_board_type_dependent_information. Theinformation inherent in each board type specification is described inthe supported_board_type_dependent_information.

The above-described series of operations can be executed by hardware.Alternatively, software may be used, in which case, a software programimplementing the above operations may be installed into a computer builtinto a controller specifically used as hardware. Alternatively, theabove software program may be installed into a general-use personalcomputer that can execute the various functions by installing variousprograms.

As shown in FIG. 38, a general-use personal computer 101 has, forexample, a built-in central processing unit (CPU) 111. An input/outputinterface 116 is connected to the CPU 111 via a bus 115. In response toan instruction provided by a user from an input unit 118, such as akeyboard, a mouse, etc., via the input/output interface 116, the CPU 111reads a program implementing the above-described operations from arecording medium, such as a read only memory (ROM) 112 or a hard disk114, or a recording medium loaded into a drive 120, such as a magneticdisk 131, an optical disc 132, or a magneto-optical disk 133. The CPU111 then installs the read program into a random access memory (RAM) 113and executes it. The program installed in the hard disk 114 may be aprogram stored in a recording medium and distributed to the user, or maybe a program transferred through a satellite or a network and receivedby a communication unit 119, and then installed in the hard disk 14.

After processing the program, the CPU 111 outputs an image signal to adisplay unit 117, such as a liquid crystal display (LCD) or a cathoderay tube (CRT), via the input/output interface 116.

As is seen from the foregoing description, the information processingapparatus, the information processing method, and the recording mediumof the present invention offer the following advantages.

Based on first identification information for identifying a managementunit and second identification information for identifying themanagement information within an area managed by the management unit,third identification information for identifying the managementinformation within the network is generated. Thus, the thirdidentification information can be simply and speedily generated.

A provisional ID is generated for an event for controlling a sub-unit.The provisional ID is compared with an event ID of an extracted event.The provisional ID is then authenticated as the event ID according tothe comparison result. Accordingly, the occurrence of double-booking inthe network can be prevented.

In response to a request from an external information processingapparatus, the stored reservation information is supplied to theexternal information processing apparatus. Identification informationincluding a value unique to the information processing apparatus thathas reserved the sub-unit and a value unique to the reservation of thesub-unit set by the information processing apparatus is added to thereservation information of the sub-unit. This enables the externalinformation processing apparatus to reliably reserve the sub-unit of theinformation processing apparatus. The occurrence of double-booking canalso be prevented.

When a sub-unit of an external information processing apparatus isreserved, the reservation information concerning the reservation of thesub-unit stored in the external information processing apparatus isread. According to the reading result, identification informationincluding a value unique to the information processing apparatus thathas reserved the sub-unit and a value unique to the reservation of thesub-unit set by the information processing apparatus is added to thereservation information of the sub-unit of the external informationprocessing apparatus. Then, the resulting reservation information iswritten into the external information processing apparatus. Therefore,the occurrence of double-booking can be prevented, and the sub-unit ofthe external information processing apparatus can be reliably reserved.

What is claimed is:
 1. An information processing apparatus connected toan external information processing apparatus via a network, saidinformation processing apparatus comprising: management means formanaging management information; and generation means for generating,based on first identification information for identifying saidmanagement means and second identification information for identifyingthe management information within an area managed by said managementmeans, third identification information for identifying the managementinformation within said network.
 2. An information processing apparatusaccording to claim 1, further comprising storage means for storing themanagement information in such a manner that the management informationis readable by said external information processing apparatus via saidnetwork.
 3. An information processing apparatus according to claim 1,wherein said network is formed by using an IEEE-1394 serial data bus. 4.An information processing apparatus according to claim 1, wherein thefirst identification information for identifying said management meansis a global unique ID.
 5. An information processing method for use in aninformation processing apparatus connected to an external informationprocessing apparatus via a network, said information processingapparatus comprising management means for managing managementinformation, said information processing method comprising thegeneration step of generating, based on first identification informationfor identifying said management means and second identificationinformation for identifying the management information within an areamanaged by said management means, third identification information foridentifying the management information within said network.
 6. Arecording medium for recording a program executable by a computer, saidprogram for controlling an information processing apparatus connected toan external information processing apparatus via a network, saidinformation processing apparatus comprising management means formanaging management information, said program comprising the generationstep of generating, based on first identification information foridentifying said management means and second identification informationfor identifying the management information within an area managed bysaid management means, third identification information for identifyingthe management information within said network.
 7. An informationprocessing apparatus connected to an external information processingapparatus via a network and including at least one sub-unit forexecuting a predetermined function, said information processingapparatus comprising: generation means for generating a provisional IDfor an event which controls the sub-unit; extraction means forextracting an event ID of an authenticated event; comparison means forcomparing the provisional ID generated by said generation means with theevent ID extracted by said extraction means; and authentication meansfor authenticating the provisional ID as the event ID according to acomparison result obtained by said comparison means.
 8. An informationprocessing apparatus according to claim 7, wherein the event ID uniquelycorresponds to the event according to an authentication operationperformed by said authentication means.
 9. An information processingapparatus according to claim 7, wherein said network is formed by anIEEE-1394 serial data bus.
 10. An information processing apparatusaccording to claim 7, further comprising combination means for combiningthe event ID with a value unique to said information processingapparatus that has reserved the sub-unit, thereby generating a valueunique to said network.
 11. An information processing method for use inan information processing apparatus connected to an external informationprocessing apparatus via a network and including at least one sub-unitfor executing a predetermined function, said information processingmethod comprising: a generation step of generating a provisional ID foran event which controls the sub-unit; an extraction step of extractingan event ID of an authenticated event; a comparison step of comparingthe provisional ID generated in said generation step with the event IDextracted in said extraction step; and an authentication step ofauthenticating the provisional ID as the event ID according to acomparison result obtained in said comparison step.
 12. A recordingmedium for recording a program executable by a computer, said programfor controlling an information processing apparatus connected to anexternal information processing apparatus via a network and including atleast one sub-unit for executing a predetermined function, said programcomprising: a generation step of generating a provisional ID for anevent which controls the sub-unit; an extraction step of extracting anevent ID of an authenticated event; a comparison step of comparing theprovisional ID generated in said generation step with the event IDextracted in said extraction step; and an authentication step ofauthenticating the provisional ID as the event ID according to acomparison result obtained in said comparison step.
 13. An informationprocessing apparatus connected to an external information processingapparatus via a network and including at least one sub-unit forexecuting a predetermined function, said information processingapparatus comprising: storage means for storing reservation informationconcerning a reservation of the sub-unit; supply means for reading outthe reservation information stored in said storage means and supplyingthe reservation information to said external information processingapparatus in response to a request from said external informationprocessing apparatus; and addition means for adding identificationinformation to the reservation information of the sub-unit to be storedin said storage means, said identification information including a valueunique to said information processing apparatus that has reserved thesub-unit and a value unique to the reservation of the sub-unit set bysaid information processing apparatus.
 14. An information processingapparatus according to claim 13, wherein the value unique to saidinformation processing apparatus is a global unique ID, and the valueunique to the reservation is a record ID.
 15. An information processingapparatus according to claim 13, further comprising: input means forinputting reservation information concerning the reservation of thesub-unit; search means for searching for the identification informationcorresponding to the reservation information stored in said storagemeans; and setting means for setting a value which is not stored in saidstorage means as a value unique to the reservation information newlyinput by said input means and set by said information processingapparatus in accordance with a search result obtained by said searchmeans.
 16. An information processing apparatus according to claim 13,further comprising: reading means for reading reservation informationstored in storage means of said external information processingapparatus when a sub-unit of said external information processingapparatus is reserved; and writing means for adding identificationinformation to reservation information of the sub-unit of said externalinformation processing apparatus in accordance with a reading resultobtained by said reading means and for writing the reservationinformation into said storage means of said external informationprocessing apparatus, said identification information including a valueunique to said information processing apparatus that has reserved thesub-unit of said external information processing apparatus and a valueunique to the reservation of the sub-unit of said external informationprocessing apparatus set by said information processing apparatus. 17.An information processing method for use in an information processingapparatus connected to an external information processing apparatus viaa network and including at least one sub-unit for executing apredetermined function, said information processing method comprising: astorage control step of controlling storage of reservation informationconcerning a reservation of the sub-unit; a supply step of reading outthe reservation information stored by processing of said storage controlstep and of supplying the reservation information to said externalinformation processing apparatus in response to a request from saidexternal information processing apparatus; and an addition step ofadding identification information to the reservation information of thesub-unit to be stored by processing of said storage control step, saididentification information including a value unique to said informationprocessing apparatus that has reserved the sub-unit and a value uniqueto the reservation of the sub-unit set by said information processingapparatus.
 18. A recording medium for recording an informationprocessing program executable by a computer, said information processingprogram for use in an information processing apparatus connected to anexternal information processing apparatus via a network and including atleast one sub-unit for executing a predetermined function, said programcomprising: a storage control step of controlling storage of reservationinformation concerning a reservation of the sub-unit; a supply step ofreading out the reservation information stored by processing of saidstorage control step and of supplying the reservation information tosaid external information processing apparatus in response to a requestfrom said external information processing apparatus; and an additionstep of adding identification information to the reservation informationof the sub-unit to be stored by processing of said storage control step,said identification information including a value unique to saidinformation processing apparatus that has reserved,the sub-unit and avalue unique to the reservation of the sub-unit set by said informationprocessing apparatus.
 19. An information processing apparatus connectedto via a network an external information processing apparatus includingat least one sub-unit for executing a predetermined function, saidinformation processing apparatus comprising: reading means for readingreservation information concerning a reservation of the sub-unit storedin storage means of said external information processing apparatus whenthe sub-unit of said external information processing apparatus isreserved; and writing means for adding identification information to thereservation information of the sub-unit of said external informationprocessing apparatus in accordance with a reading result obtained bysaid reading means and for writing the reservation information into saidexternal information processing apparatus, said identificationinformation including a value unique to said information processingapparatus that has reserved the sub-unit of said external informationprocessing apparatus and a value unique to the reservation of thesub-unit set by said information processing apparatus.
 20. Aninformation processing apparatus according to claim 19, wherein thevalue unique to said information processing apparatus is a global uniqueID, and the value unique to the reservation is a record ID.
 21. Aninformation processing method for use in an information processingapparatus connected to via a network an external information processingapparatus including at least one sub-unit for executing a predeterminedfunction, said information processing method comprising: a reading stepof reading reservation information concerning a reservation of-thesub-unit stored in storage means of said external information processingapparatus when the sub-unit of said external information processingapparatus is reserved; and a writing step of adding identificationinformation to the reservation information of the sub-unit of saidexternal information processing apparatus in accordance with a readingresult obtained by processing of said reading step and of writing thereservation information into said external information processingapparatus, said identification information including a value unique tosaid information processing apparatus that has reserved the sub-unit ofsaid external information processing apparatus and a value unique to thereservation of the sub-unit set by said information processingapparatus.
 22. A recording medium for recording an informationprocessing program executable by a computer, said information processingprogram for use in an information processing apparatus connected to viaa network an external information processing apparatus including atleast one sub-unit for executing a predetermined function, said programcomprising: a reading step of reading reservation information concerninga reservation of the sub-unit stored in storage means of said externalinformation processing apparatus when the sub-unit of said externalinformation processing apparatus is reserved; and a writing step ofadding identification information to the reservation information of thesub-unit of said external information processing apparatus in accordancewith a reading result obtained by processing of said reading step and ofwriting the reservation information into said external informationprocessing apparatus, said identification information including a valueunique to said information processing apparatus that has reserved thesub-unit of said external information processing apparatus and a valueunique to the reservation of the sub-unit set by said informationprocessing apparatus.